Electric motor control apparatus and electric motor control method

ABSTRACT

An electric motor control apparatus that alternately switches modulation mode between an asynchronous PWM control, which controls an electric motor by fixing a PWM frequency, and a synchronous PWM control, which controls the electric motor by making the PWM frequency proportional to a drive frequency of the electric motor, wherein when switching the modulation mode, a compensation value is calculated based on a state quantity, which correlates with a component in a rotating coordinate system of a voltage applied to the electric motor and is obtained immediately before switching, and the voltage immediately after switching is compensated for by the compensation value.

TECHNICAL FIELD

The present invention relates to an electric motor control apparatus andan electric motor control method.

BACKGROUND ART

JP3276135B discloses an electric motor control apparatus that switchesmodulation mode between an asynchronous PWM control, which controls theelectric motor by fixing a PWM frequency, and a synchronous PWM control,which controls the electric motor by making the PWM frequencyproportional to a drive frequency of the electric motor. The switchingcontrol of the modulation mode is executed every time the operatingstate of the motor becomes a predetermined condition.

SUMMARY OF INVENTION

However, since JP3276135B has a configuration in which the voltageapplied to the electric motor is independently switched for each phaseduring the switching control, in each phase, a control section in whichthe modulation mode is inconsistent may occur, causing a 3-phaseimbalance, thereby may cause voltage disturbance and fluctuations inmotor torque.

Thus, the object of the present invention is to provide an electricmotor control apparatus and an electric motor control method forsuppressing motor torque fluctuations by suppressing voltage disturbancewhen switching the modulation mode between asynchronous PWM control andsynchronous PWM control.

An electric motor control apparatus according to one embodiment of thepresent invention is an electric motor control apparatus thatalternately switches modulation mode between an asynchronous PWMcontrol, which controls an electric motor by fixing a PWM frequency, anda synchronous PWM control, which controls the electric motor by makingthe PWM frequency proportional to a drive frequency of the electricmotor, wherein when switching the modulation mode, a compensation valueis calculated based on a state quantity, which correlates with acomponent in a rotating coordinate system of a voltage applied to theelectric motor and is obtained immediately before switching, and thevoltage immediately after switching is compensated for by thecompensation value.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a diagram showing a main configuration (torque command valueinput side) of an electric vehicle to which an electric motor controlapparatus of a first embodiment is applied.

FIG. 2 is a diagram showing a main configuration (motor side) of theelectric vehicle to which the electric motor control apparatus of thefirst embodiment is applied.

FIG. 3 includes a table (the upper side) showing a relation between atorque command value and a voltage norm compensation value of a voltagevector, and a table (the lower side) showing a relation between thetorque command value and a voltage phase compensation value of thevoltage vector.

FIG. 4 includes a diagram (the upper side) showing a relation betweenvoltage vectors when the modulation mode switches from synchronous PWMcontrol to asynchronous PWM control, and a diagram (the lower side)showing a relation between voltage vectors when the modulation modeswitches from asynchronous PWM control to synchronous PWM control.

FIG. 5 is a control flow executed by a voltage compensator.

FIG. 6 is a diagram explaining the effects of the electric motor controlapparatus of the first embodiment.

FIG. 7 is a diagram showing details of a current vector control unit.

FIG. 8 is a diagram showing details of a voltage phase control unit.

FIG. 9 is a diagram showing a relation between a voltage phase and atorque.

FIG. 10 is a diagram showing details of an output switcher.

FIG. 11 is a diagram showing details of a control switching determiner.

FIG. 12 is a diagram showing the determination criterion of the controlswitching determiner.

FIG. 13 is a diagram showing details of a modulation switchingdeterminer.

FIG. 14 is a diagram showing the determination criterion of themodulation switching determiner.

FIG. 15 is a diagram showing details of an asynchronous PWM controlunit.

FIG. 16 is a diagram showing details of a synchronous PWM control unit.

FIG. 17 is a diagram showing a main configuration (torque command valueinput side) of an electric vehicle to which an electric motor controlapparatus of a second embodiment is applied.

FIG. 18 is a diagram showing a main configuration (torque command valueinput side) of an electric vehicle to which an electric motor controlapparatus of a third embodiment is applied.

FIG. 19 is a diagram showing a main configuration (torque command valueinput side) of an electric vehicle to which an electric motor controlapparatus of a fourth embodiment is applied.

FIG. 20 is a diagram showing a main configuration (torque command valueinput side) of an electric vehicle to which an electric motor controlapparatus of a fifth embodiment is applied.

FIG. 21 is a diagram showing a main configuration (torque command valueinput side) of an electric vehicle to which an electric motor controlapparatus of a sixth embodiment is applied.

DESCRIPTION OF EMBODIMENTS

Hereinafter, embodiments of the present invention will be described withreference to the drawings.

First Embodiment

FIG. 1 is a diagram showing a main configuration (torque command valueinput side) of an electric vehicle to which an electric motor controlapparatus of a first embodiment is applied. FIG. 2 is a diagram showinga main configuration (motor side) of the electric vehicle to which theelectric motor control apparatus of the first embodiment is applied.

The electric motor control apparatus according to the present inventionis applicable to an electric vehicle including an electric motor (motor17) that functions as a part or all of the drive source of the vehicle.The electric vehicle includes not only electric automobile, but alsohybrid automobile and fuel-cell automobile.

The current vector control unit 1 executes a current control (currentvector control) that controls the drive of the motor 17 by controllingthe current applied to the motor 17. Specifically, the current vectorcontrol unit 1 calculates the dq-axis voltage command value (v*_(d_i),v*_(q_i)) for generating (outputting) the desired torque in the motor 17based on the torque command value T*, current command value (i*_(d),i*_(q)), non-interference voltage (v*_(d_dcpl), v*_(q_dcpl)), anddq-axis current detection value (i_(d), i_(q)), and outputs the value tothe output switcher 5. The torque command value T* is a value determinedaccording to the depression amount (accelerator opening), etc. of theaccelerator. The details of the current vector control unit 1 will bedescribed later with reference to FIG. 7.

The voltage phase control unit 2 executes a voltage phase control thatcontrols the drive of the motor 17 by controlling the voltage phase ofthe voltage applied to the motor 17. Specifically, the voltage phasecontrol unit 2 calculates the dq-axis voltage command value (v*_(d_v),v*_(q_v)) for generating the desired torque in the motor 17 based on thetorque command value T*, rotation speed N of the motor 17, voltagedetection value V_(dc) of the battery (Bat.), and dq-axis currentdetection value i_(d), i_(g), and outputs the value to the outputswitcher 5. The details of the voltage phase control unit 2 will bedescribed with reference to FIG. 8 and FIG. 9.

The current command value generator 3 generates and outputs the currentcommand value (i*_(d), i*_(q)) based on the torque command value T*,rotation speed N, and voltage detection value V_(dc). The currentcommand value generator 3 stores a dedicated table that makes the torquecommand value T* correspond to the d-axis current command value i*_(d)and q-axis current command value i*_(q), and when the torque commandvalue T* is input, the current command value (i*_(d), i*_(q)) is outputvia this table.

The non-interference voltage generator 4 generates and outputs thenon-interference voltage (v*_(d_dcpl), v*_(q_dcpl)) using the dedicatedtable as described above based on the torque command value T*, rotationspeed N, and voltage detection value V_(dc).

The control switching determiner 6 determines whether to execute acurrent vector control or voltage phase control as the method (controlmode) for controlling the motor 17. Specifically, the control switchingdeterminer 6 selects to execute either a current vector control or avoltage phase control based on the d-axis current command value id*,q-axis current detection value i_(g), dq-axis final voltage commandvalue (v*_(d_fin), V*_(q_fin)), and voltage detection value V_(dc) ofthe battery (Bat.), and outputs the control mode signal corresponding tothe selected control mode to the output switcher 5. Further, the detailsof the control switching determiner 6 will be described later withreference to FIG. 11 and FIG. 12.

The modulation switching determiner 7 determines to execute either anasynchronous PWM control or a synchronous PWM control based on thedq-axis final voltage command value (v*_(d_fin), v*_(q_fin)) and voltagedetection value V_(dc), and outputs the signal of the selectedmodulation mode (synchronous, asynchronous) (for example, asynchronousis “0” (“1” in FIG. 6), synchronous is “1” (“2” in FIG. 6)). Further,the details of the modulation switching determiner 7 will be describedlater with reference to FIG. 13 and FIG. 14.

The voltage compensation value generator 21 generates a voltagecompensation value (v_(a_async), v_(a_sync), α_(async), α_(sync)) basedon the torque command value T* and outputs the value to the voltagecompensation value vector converter 22. The details of the voltagecompensation value generator 21 will be described later with referenceto FIG. 3.

The voltage compensation value vector converter 22 outputs the dq-axisvoltage compensation value (v_(d_async), v_(q_async)) for transferringto asynchronous PWM control based on the voltage compensation value(v_(a_async), α_(async)) output from the voltage compensation valuegenerator 21, dq-axis final voltage command value (v*_(d_fin),v*_(q_fin)) output from the voltage compensator 23, final voltage normV*_(a_fin) output from the vector converter 9, and final voltage phaseα*_(fin). Further, the voltage compensation value vector converter 22outputs the dq-axis voltage compensation value (v_(d_sync), v_(q_sync))for transferring to synchronous PWM control based on the voltagecompensation value (v_(a_sync), α_(sync)) output from the voltagecompensation value generator 21, dq-axis final voltage command value(v*_(d_fin), v*_(q_fin)) output from the voltage compensator 23, finalvoltage norm V*_(a_fin) output from the vector converter 9, and finalvoltage phase α*_(fin). The details of the voltage compensation valuevector converter 22 will be described later with reference to FIG. 4.

The voltage compensator 23 generates the dq-axis final voltage commandvalue (v*_(d_fin), V*_(q_fin)) based on the output of the voltagecompensation value vector converter 22, the output of the outputswitcher 5, and the output of the modulation switching determiner 7, andoutputs the value to the UVW-phase converter 8 and vector converter 9.The details of the voltage compensator 23 will be described later withreference to FIG. 5.

The UVW-phase converter 8 converts the dq-axis final voltage commandvalue (v*_(d_fin), v*_(q_fin)) to a 3-phase voltage command valuev*_(u), v*_(v), v*_(w) as in Equation (1) below based on the electricalangle θ of the motor 17, and outputs the value.

$\begin{matrix}\left\lbrack {{Equation}1} \right\rbrack &  \\{\begin{bmatrix}v_{u}^{*} \\v_{v}^{*} \\v_{w}^{*}\end{bmatrix} = {{{\sqrt{\frac{2}{3}}\begin{bmatrix}1 & 0 \\{- \frac{1}{2}} & \frac{\sqrt{3}}{2} \\{- \frac{1}{2}} & {- \frac{\sqrt{3}}{2}}\end{bmatrix}}\begin{bmatrix}{\cos\theta} & {- \sin\theta} \\{\sin\theta} & {\cos\theta}\end{bmatrix}}\begin{bmatrix}v_{d\_{fin}}^{*} \\v_{q\_{fin}}^{*}\end{bmatrix}}} & (1)\end{matrix}$

The vector converter 9 uses the dq-axis final voltage command value(v*_(d_fin), v*_(q_fin)) output from the voltage compensator 23 andconverts it to the final voltage norm v*_(a_fin) and final voltage phaseα*_(fin) of the voltage vector based on the following Equation (2).

$\begin{matrix}\left\lbrack {{Equation}2} \right\rbrack &  \\\left\{ \begin{matrix}{V_{a\_{fin}}^{*} = \sqrt{{v_{d\_{fin}}^{*}}^{2} + {v_{q\_{fin}}^{*}}^{2}}} \\{\alpha_{fin}^{*} = {\tan^{- 1}\frac{- v_{d\_{fin}}^{*}}{v_{q\_{fin}}^{*}}}}\end{matrix} \right. & (2)\end{matrix}$

The synchronization pulse number determining unit 10 calculates thesynchronization pulse number num based on the absolute value |ω_(re)α ofthe total angular velocity of the electrical angular velocity core (theamount of change per unit time in the electrical angle θ) and thevoltage phase angular velocity ωα (the amount of change per unit time inthe voltage phase a to be described later).

For the asynchronous PWM control unit 11, a 3-phase voltage commandvalue (v*_(u), v*_(v), v*_(w)) is input from the UVW-phase converter 8and the voltage detection value V_(dc) of the battery (Bat.) is input.The asynchronous PWM control unit 11 generates the high-voltage elementdrive signals (D*_(uua), D*_(ula), D*_(vua), D*_(vla), D*_(wua),D*_(wla)) for realizing an asynchronous PWM control of a so-calledtriangular wave comparison method based on the magnitude determination(compare match) between a comparison value, which is calculated based onthe ratio of the 3-phase voltage command value (v*_(u), v*_(v), v*_(w))to the voltage detection value V_(dc), and a triangular carrier wavewith a constant frequency, and outputs the signals to the PWM outputswitcher 13. The details of the asynchronous PWM control unit 11 will bedescribed later with reference to FIG. 14.

The synchronous PWM control unit 12 calculates the high-voltage elementdrive signals in which the switching frequency of the inverter 14 issynchronized with the electrical angular frequency (drive frequency) ofthe motor 17. Specifically, the synchronous PWM control unit 12generates the high-voltage element drive signals (D*_(uus), D*_(uls),D*_(vus), D*_(vis), D*_(wus), D*_(wls)) in which the switching frequencyof the inverter 14 is synchronized with the electrical angular frequencyof the motor 17 based on the final voltage norm V*_(a_fin), finalvoltage phase α*_(fin), electrical angle θ, voltage detection valueV_(dc), and synchronization pulse number num, and outputs the signals tothe PWM output switcher 13. The details of the synchronous PWM controlunit 12 will be described later with reference to FIG. 15.

The PWM output switcher 13 outputs the high-voltage element drivesignals according to the modulation mode determined by the modulationswitching determiner 7. Specifically, the PWM output switcher 13 selectseither the high-voltage element drive signals output by the asynchronousPWM control unit 11 or the high-voltage element drive signals output bythe synchronous PWM control unit 12 according to the modulation modeoutput by the modulation switching determiner 7, and outputs the signalsto the inverter 14 as the high-voltage element drive signals (D*_(uu),D*_(ul), D*_(vu), D*_(vl), D*_(wu), D*wl).

The inverter 14 is composed of 3 phases and 6 arms, and includes a totalof 6 power elements, 2 for each phase. The inverter 14 generates a3-phase PWM voltage (v_(u), v_(v), v_(w)) by driving each of the powerelements based on the high-voltage element drive signals selected andoutput by the PWM output switcher 13. The generated 3-phase PWM voltage(v_(u), v_(v), v_(w)) is applied to the motor 17.

Since the motor 17 is driven with 3 phases, the inverter 14 and themotor 17 are connected by 3 wires corresponding to the 3 phases. TheU-phase PWM voltage vu is input to the motor 17 via the u-phase wiring,the V-phase PWM voltage v_(v) is input to the motor 17 via the v-phasewiring, and the W-phase PWM voltage v_(w) is input to the motor 17 viathe w-phase wiring.

The current detector 15 detects currents in at least two of the 3 phases(for example, i_(u), i_(v)). Further, since the sum of i_(u), i_(v), andi_(w), which are 3-phase currents, becomes zero, the w-phase currentvalue i_(w) can be obtained by −i_(u)−i_(v).

The dq-axis converter 19 converts the current (for example, i_(u),i_(v)) detected by the current detector 15 to the dq-axis currentdetection value (i_(d), i_(q)) based on the electrical angle θ using thefollowing Equation (3).

$\begin{matrix}\left\lbrack {{Equation}3} \right\rbrack &  \\{\begin{bmatrix}i_{d} \\i_{q}\end{bmatrix} = {\begin{bmatrix}{\cos\theta} & {\sin\theta} \\{- \sin\theta} & {\cos\theta}\end{bmatrix}{{\sqrt{\frac{2}{3}}\begin{bmatrix}1 & {- \frac{1}{2}} & {- \frac{1}{2}} \\0 & \frac{\sqrt{3}}{2} & {- \frac{\sqrt{3}}{2}}\end{bmatrix}}\begin{bmatrix}i_{u} \\i_{v} \\{- i_{u} - i_{v}}\end{bmatrix}}}} & (3)\end{matrix}$

The voltage sensor 18 detects the drive voltage supplied from thebattery (Bat.) to the inverter 14. The rotor position sensor 16 detectsthe electrical angle θ. Further, the rotation speed calculator 20calculates and outputs the rotation speed N based on the amount ofchange per unit time in the electrical angle θ.

Further, the above components (excluding the inverter 14 and the motor17) are configured as at least one functional unit included in thecontroller (control apparatus).

The controller is composed of, for example, a central processing unit(CPU), a read only memory (ROM), a random access memory (RAM), and aninput/output interface (I/O interface), and can calculate the torquecommand value T*.

<Voltage Compensation Value Generator>

FIG. 3 includes a table (the upper side) showing a relation between avoltage norm compensation value of a voltage vector and a torque commandvalue T*, and a table (the lower side) showing a relation between thetorque command value T* and a voltage phase compensation value of thevoltage vector.

The voltage compensation value generator 21 outputs the asynchronoustransfer voltage norm compensation value v_(a_async) with reference tothe upper table (v_(a_async)) of FIG. 3 and outputs the asynchronoustransfer voltage phase compensation value α_(async) with reference tothe lower table (α_(async)) of FIG. 3 based on the torque command valueT* (a state quantity that correlates with the components in the rotatingcoordinate system (dq-axis) of the voltage applied to the motor 17).

Similarly, the voltage compensation value generator 21 outputs thesynchronous transfer voltage norm compensation value v_(a_sync) withreference to the upper table (v_(a_sync)) of FIG. 3 and outputs thesynchronous transfer voltage phase compensation value α_(sync) withreference to the lower table (α_(async)) of FIG. 3 based on the torquecommand value T*.

As shown in FIG. 3, the voltage norm compensation value v_(a) and thevoltage phase compensation value α increase monotonically as the torquecommand value T* increases, but the amounts of increase decrease, andfurther, regarding the voltage norm compensation value v_(a) and voltagephase compensation value α, the compensation values when the modulationmode switches from asynchronous PWM control to synchronous PWM control(V_(a_async), α_(async)) are respectively larger than the compensationvalues when the modulation mode switches from synchronous PWM control toasynchronous PWM control (v_(a_sync), α_(sync)), but the magnituderelation may be reversed depending on the specifications, etc. of themotor 17.

<Voltage Compensation Value Vector Converter>

FIG. 4 includes a diagram (the upper side) showing a relation betweenvoltage vectors when the modulation mode switches from synchronous PWMcontrol to asynchronous PWM control, and a diagram (the lower side)showing a relation between voltage vectors when the modulation modeswitches from asynchronous PWM control to synchronous PWM control.

The voltage compensation value vector converter 22 outputs the dq-axisvoltage compensation value (v_(d_async), v_(q_async)) when transferringto asynchronous PWM control according to the following Equation (4)using the output of the voltage compensation value generator 21, theprevious value of the d-axis final voltage command value v*_(d_fin), theprevious value of the q-axis final voltage command value v*_(q_fin), andthe v*_(afin) and α*_(fin) output from the vector converter 9.

$\begin{matrix}\left\lbrack {{Equation}4} \right\rbrack &  \\\left\{ \begin{matrix}{v_{d\_{async}} = {{{- \left( {v_{a\_{fin}}^{*} + v_{a\_{async}}} \right)} \cdot {\sin\left( {\alpha_{fin}^{*} + \alpha_{async}} \right)}} - v_{d\_{fin}}^{*}}} \\{v_{q\_{async}} = {{\left( {v_{a\_{fin}}^{*} + v_{a\_{async}}} \right) \cdot {\cos\left( {\alpha_{fin}^{*} + \alpha_{async}} \right)}} - v_{q\_{fin}}^{*}}}\end{matrix} \right. & (4)\end{matrix}$

The voltage compensation value vector converter 22 outputs theasynchronous transfer voltage compensation value (v_(d_async),v_(q_async)), which is for converting the voltage vector v*_(_fin)(v*_(d_fin), V*_(q_fin)) (before compensation) to the voltage vectorv*_(_fin) (v*_(d_fin), v*_(q_fin)) (after compensation) in the rotatingcoordinate system (dq-axis), using Equation (4) as shown in the upperside of FIG. 4 when the modulation mode switches from synchronous PWMcontrol to asynchronous PWM control.

Further, the voltage compensation value vector converter 22 outputs thedq-axis voltage compensation value (v_(d_sync), v_(q_sync)) fortransferring to synchronous PWM control by the following Equation (5).

$\begin{matrix}\left\lbrack {{Equation}5} \right\rbrack &  \\\left\{ \begin{matrix}{v_{d\_{sync}} = {{{- \left( {v_{a\_{fin}}^{*} + v_{a\_{sync}}} \right)} \cdot {\sin\left( {\alpha_{fin}^{*} + \alpha_{sync}} \right)}} - v_{d\_{fin}}^{*}}} \\{v_{q\_{sync}} = {{\left( {v_{a\_{fin}}^{*} + v_{a\_{sync}}} \right) \cdot {\cos\left( {\alpha_{fin}^{*} + \alpha_{sync}} \right)}} - v_{q\_{fin}}^{*}}}\end{matrix} \right. & (5)\end{matrix}$

The voltage compensation value vector converter 22 outputs thesynchronous transfer voltage compensation value (v_(d_sync),v_(q_sync)), which is for converting the voltage vector v*_(_fin)(v*_(d_fin), v*_(q_fin)) (before compensation) to the voltage vectorv*_(_fin) (v*_(d_fin), v*_(q_fin)) (after compensation) in the rotatingcoordinate system (dq-axis), using Equation (5) as shown in the lowerside of FIG. 4 when the modulation mode switches from asynchronous PWMcontrol to synchronous PWM control.

Further, if there is no input of v_(a_async) and v_(a_sync), Equation(4) and Equation (5) are set with v_(a_async)=0 and v_(a_sync)=0.

<Voltage Compensator>

FIG. 5 is a control flow executed by the voltage compensator 23. Thevoltage compensator 23 executes the processes of Steps S1-S6 shown inFIG. 5.

In Step S1, the voltage compensator 23 determines whether or not theprevious value of the modulation mode (asynchronous PWM control orsynchronous PWM control) input from the modulation switching determiner7 is synchronous PWM control (and may determine whether or not theprevious value of the modulation mode is asynchronous PWM control, andthe same applies hereinafter), and if NO (asynchronous PWM control), theprocess proceeds to Step S2, and if YES (synchronous PWM control), theprocess proceeds to Step S3.

In Step S2, the voltage compensator 23 determines whether or not thepresent value of the modulation mode is synchronous PWM control, and ifYES (synchronous PWM control), the process proceeds to Step S4, and ifNO (asynchronous PWM control), the process proceeds to Step S5.

In Step S3, the voltage compensator 23 determines whether or not thepresent value of the signal of the modulation mode is synchronous PWMcontrol, and if NO (asynchronous PWM control), the process proceeds toStep S5, and if YES (synchronous PWM control), the process proceeds toStep S6.

In Step S4, the voltage compensator 23 determines that the modulationmode has switched from asynchronous PWM control to synchronous PWMcontrol, and calculates v*_(d_fin) and v*_(q_fin) using the followingEquation (6). Further, in Equation (6), v*_(d_iv) and v*_(q_iv) are theoutputs of the output switcher 5.

$\begin{matrix}\left\lbrack {{Equation}6} \right\rbrack &  \\\left\{ \begin{matrix}{v_{d\_{fin}}^{*} = {v_{d\_{iv}}^{*} + v_{d\_{sync}}}} \\{v_{q\_{fin}}^{*} = {v_{q\_{iv}}^{*} + v_{q\_{sync}}}}\end{matrix} \right. & (6)\end{matrix}$

In Step S5, the voltage compensator 23 determines that the modulationmode has switched from synchronous PWM control to asynchronous PWMcontrol, and calculates v*_(d_fin) and v*_(q_fin) using the followingEquation (7).

$\begin{matrix}\left\lbrack {{Equation}7} \right\rbrack &  \\\left\{ \begin{matrix}{v_{d\_{fin}}^{*} = {v_{d\_{iv}}^{*} + v_{d\_{async}}}} \\{v_{q\_{fin}}^{*} = {v_{q\_{iv}}^{*} + v_{q\_{async}}}}\end{matrix} \right. & (7)\end{matrix}$

In Step S6, the voltage compensator 23 determines that the modulationmode has not been switched, and calculates v*_(d_fin) and v*_(q_fin)using the following Equation (8).

$\begin{matrix}\left\lbrack {{Equation}8} \right\rbrack &  \\\left\{ \begin{matrix}{v_{d\_{fin}}^{*} = v_{d\_{iv}}^{*}} \\{v_{q\_{fin}}^{*} = v_{q\_{iv}}^{*}}\end{matrix} \right. & (8)\end{matrix}$

<Changes in Voltage Vector and Torque when Switching Modulation Mode>

FIG. 6 is a diagram explaining the effects of the electric motor controlapparatus of the first embodiment. FIG. 6 shows the voltage norm v_(a)of the voltage vector, the voltage phase a of the voltage vector, andthe change in torque when the modulation mode switches from asynchronousPWM control (modulation mode is “1”) to synchronous PWM control(modulation mode is “2”).

As shown on the upper left side of FIG. 6, when voltage compensation isnot performed based on Equation (3), the voltage phase a changes toconverge to the value required (about 77 [deg] in FIG. 6) when switchingto synchronous PWM control from the value before switching (about 80[deg] in FIG. 6) with a predetermined time constant. Here, the currentvector control unit 1 and the voltage phase control unit 2 feed back theoutput to the voltage compensator 23 based on the output (i_(d), i_(q))of the dq-axis converter 19, and the aforementioned time constantreflects the time constant of the feedback.

Therefore, immediately after time 0.1 [s], the voltage phase a of thevoltage vector deviates from the originally required voltage phase by 80[deg]−77 [deg]=3 [deg]. Thus, due to this, the torque rises sharplyimmediately after time 0.1 [s] and converges to the original valueaccording to the aforementioned time constant, but this behavior appearsas a torque ripple.

According to the aforementioned JP3276135B, the modulation mode isswitched between asynchronous PWM control and synchronous PWM controlindependently in each phase, and thus, if the timings of switching themodulation mode in each phase are not the same, a plurality of torqueripples may appear in the time direction.

However, as shown on the upper right side of FIG. 6, in this embodiment,the voltage compensator 23 compensates for the output of the outputswitcher 5 using Equation (6) and outputs the values to the vectorconverter 9. Thus, the voltage phase a, which is the output of thevector converter 9, immediately changes to the voltage phase requiredafter switching, thereby can reduce torque ripples.

Thus, as shown on the lower side of FIG. 6, if the voltage norm andvoltage phase are not respectively compensated for by compensationvalues when switching the modulation mode, torque ripples will occur atthe timing of switching the modulation mode, but if compensations havebeen performed, the torque ripples at the timing of switching themodulation mode will be reduced.

According to FIG. 6, when the modulation mode switches from asynchronousPWM control to synchronous PWM control, although no change in thevoltage norm v_(a) can be seen, the voltage norm v_(a) may also changedepending on the operating state of the motor 17 (for example, when therotation speed N of the motor 17 is changed rapidly). In this case aswell, if the voltage is not compensated for using Equation (6), similarto the voltage phase α, a curve that converges to the value requiredafter switching with the aforementioned time constant is drawn, and thetorque ripples due to this may also occur. However, the voltagecompensator 23 compensates for the output of the output switcher 5 usingEquation (6) and outputs the values to the vector converter 9, andthereby can also reduce the torque ripples caused by the voltage normv_(a).

Further, if the torque ripples caused by the voltage norm v_(a) aresmall, the voltage compensation value generator 21 can omit thegeneration of asynchronous transfer voltage norm compensation valuev_(a_async) and synchronous transfer voltage norm compensation valuev_(a_sync). Further, at this time, the voltage compensation value vectorconverter 22 can output the dq-axis voltage compensation value(v_(d_async), v_(q_async)) based on the asynchronous transfer voltagephase compensation value α_(async), and can output the dq-axis voltagecompensation value (v_(d_sync), v_(q_sync)) based on the synchronoustransfer voltage phase compensation value α_(sync).

FIG. 6 shows the behavior when the modulation mode switches fromasynchronous PWM control to synchronous PWM control, and shows the samebehavior when the modulation mode switches from synchronous PWM controlto asynchronous PWM control. At this time, the voltage compensator 23compensates for the output of the output switcher 5 to be describedlater using Equation (7) and outputs the values to the vector converter9.

<Effects of First Embodiment>

According to the electric motor control apparatus of the firstembodiment, it is a control apparatus of an electric motor (motor 17)that switches the modulation mode between asynchronous PWM control,which controls the electric motor (motor 17) by fixing the PWMfrequency, and synchronous PWM control, which controls the electricmotor (motor 17) by making the PWM frequency proportional to the drivefrequency of the electric motor (motor 17) (electrical angular frequencyof the motor 17), and when switching the modulation mode, the controlapparatus calculates a compensation value (v_(a_async), α_(async),v_(a_sync), α_(sync)) based on a state quantity (for example, torquecommand value T*) immediately before the switching, that is, the statequantity (for example, torque command value T*) that correlates with thecomponent (v*_(d), v*_(q) (v_(a), α)) in the rotating coordinate system(dq-axis) of the voltage (v*) applied to the electric motor (motor 17),and the control apparatus compensates for the voltage (v*_(d_fin),v*_(q_fin)) immediately after the switching by the compensation value(v_(a_async), α_(async), v_(a_sync), α_(sync)).

With the above configuration, it is possible to suppress the voltagevariation (voltage response due to a predetermined time constant) causedby a deviation of the voltage (voltage norm, voltage phase) that mayoccur when switching the modulation mode from asynchronous PWM controlto synchronous PWM control or when switching the modulation mode fromsynchronous PWM control to asynchronous PWM control, and it is possibleto suppress the motor torque variation (torque ripple).

In the first embodiment, the compensation value is a voltage phasecomponent (α_(async), α_(sync)) in the rotating coordinate system.Thereby, the motor torque variation at the time of switching themodulation mode can be effectively suppressed by compensating for thevoltage phase, which has a large contribution to the suppression of thevoltage variation.

In the first embodiment, the state quantity is a command value (torquecommand value T*) for the electric motor (motor 17) to output apredetermined torque. Thus, by performing voltage compensation based onthe torque command value T*, which has a high correlation with thevoltage error at the time of switching the modulation mode, it ispossible to further suppress the motor torque variation at the time ofswitching.

According to the electric motor control method of the first embodiment,it is a control method of an electric motor (motor 17) that switches themodulation mode between asynchronous PWM control, which controls theelectric motor (motor 17) by fixing the PWM frequency, and synchronousPWM control, which controls the electric motor (motor 17) by making thePWM frequency proportional to the drive frequency of the electric motor(motor 17) (electrical angular frequency of the motor 17), and whenswitching the modulation mode, the control apparatus calculates acompensation value (v_(d_async), v_(q_async), v_(d_sync), v_(q_sync))based on a state quantity (for example, torque command value T*)immediately before the switching, that is, the state quantity (forexample, torque command value T*) that correlates with the component(v*_(d), v*_(q)) in the rotating coordinate system (dq-axis) of thevoltage (v*) applied to the electric motor (motor 17), and the controlapparatus compensates for the voltage (v*_(d_fin), v*_(q_fin))immediately after the switching by the compensation value (v_(d_async),v_(q_async), v_(d_sync), v_(q_sync)).

With the above method, it is possible to suppress the voltage variation(voltage response due to a predetermined time constant) caused by adeviation of the voltage (voltage norm, voltage phase) that may occurwhen switching the modulation mode from asynchronous PWM control tosynchronous PWM control or when switching the modulation mode fromsynchronous PWM control to asynchronous PWM control, and it is possibleto suppress the motor torque variation.

Hereinafter, before explaining the other embodiments, the othercomponents constituting the first embodiment will be described indetail, and first, the details of the current vector control unit 1 willbe described with reference to FIG. 7.

<Current Vector Control Unit>

FIG. 7 is a diagram showing the details of the current vector controlunit 1. The current vector control unit 1 includes a filter 101, asubtractor 102, a PI compensator 103, and an adder 104. Note that FIG. 7shows only the signals related to the calculation of the d-axis voltagecommand value v*_(d_i), and omits the signals related to the calculationof the q-axis voltage command value v*_(q_i), which is input to andoutput from each block similarly.

The filter 101 is a so-called low pass filter. The filter 101 is a lowpass filter considering that the interference voltage depends on thecurrent flowing through the dq-axis, and is set to a time constant whichsatisfies the target d-axis current responsiveness. The d-axisnon-interference voltage command value v_(d_dcpl_flt) which hasundergone the filtering process is output to the adder 104.

The subtractor 102 calculates the deviation between the d-axis currentcommand value i*_(d) and the d-axis current detection value i_(d), andoutputs it to the PI compensator 103.

The PI compensator 103 is a calculator that executes the so-called PIcontrol. More specifically, the PI compensator 103 calculates thecurrent feedback voltage command value v_(di)′ using the followingEquation (9) to perform feedback control based on the deviation betweenthe d-axis current command value i*_(d) and the d-axis current detectionvalue i_(d) to make the d-axis current command value i*_(d) follow theactual current (d-axis current detection value i_(d)). The currentfeedback voltage command value v_(di)′ is output to the adder 104.

$\begin{matrix}\left\lbrack {{Equation}9} \right\rbrack &  \\{v_{d\_ i}^{*} = {\frac{{K_{dp}s} + K_{di}}{s}\left( {i_{d}^{*} - i_{d}} \right)}} & (9)\end{matrix}$

However, the K_(dp) in Equation (9) indicates the proportional gain onthe d-axis, and the K_(di) in Equation (9) indicates the integral gainon the d-axis.

Further, as represented by Equation (10) below, the d-axis voltagecommand value v*_(d_i), which suppresses the interference voltagegenerated when the current flows in the dq-axis, is calculated in theadder 104 by adding the d-axis non-interference voltage command valuev_(d_dcpl_flt) to the current feedback voltage command value v_(di)′which is output from the PI compensator 103. Further, although omittedin the figure, the q-axis voltage command value v*_(q_i) is alsocalculated in the same way as the above d-axis voltage command valuev*_(d_i). The calculated dq-axis voltage command value (v*_(d_i),v*_(q_i)) is output to output switcher 5.

[Equation 10]

v* _(d_i) =v _(d_dcpl_flt) +v′ _(d_i)   (10)

Next, the details of the voltage phase control unit 2 will be describedwith reference to FIG. 8 and FIG. 9.

<Voltage Phase Control Unit>

FIG. 8 is a diagram showing the details of the voltage phase controlunit 2. The voltage phase control unit 2 includes a modulator 201, avoltage phase table 202, a filter 203, a torque calculator 204, a PIcompensator 205, a voltage phase command value limiter 206, a vectorconverter 207, an adder 208, and a subtractor 209.

The modulator 201 calculates the voltage norm command value V*a usingthe following Equation (11) based on the voltage detection value Vac ofthe battery (Bat.) and the reference modulation factor M*, which is apre-stored value.

$\begin{matrix}\left\lbrack {{Equation}11} \right\rbrack &  \\{V_{a}^{*} = {\frac{V_{dc}}{\sqrt{2}} \times M^{*}}} & (11)\end{matrix}$

The calculated voltage norm command value V*a is output to the voltagephase table 202 and the vector converter 207. Further, the modulationfactor here is defined as the ratio of an amplitude of a fundamentalwave component of a phase-to-phase voltage (for example, the voltagev_(u)-v_(v) between the U and V phases) to the voltage detection valueV_(dc). When the modulation factor is 1 or less, the voltage normcommand value V*a is in a normal modulation region where a pseudo sinewave voltage can be generated by PWM control, and when the modulationfactor exceeds 1, the voltage norm command value V*a is in anovermodulation region where the upper and lower limits are limited evenif an attempt is made to generate a pseudo sine wave by PWM control.Further, for example, when the modulation factor is 1.1, the outputvoltage will be the so-called square wave voltage even if an attempt ismade to generate a pseudo sine wave by PWM control.

The voltage phase table 202 acquires the voltage phase command valueα_(ff) (feedforward voltage phase command value) according to the inputtorque command value T*, rotation speed N of the motor 17, and voltagenorm command value V*_(a) using a table obtained in advance byexperiment or analysis. The voltage phase command value αff is output tothe adder 208. Further, the table used here stores the voltage phasecommand value, which has been measured in advance by experiment, foreach operating point of each index in the nominal state.

The torque calculator 204 stores a table showing the relation betweenthe values of the currents flowing to the motor 17 on the d-axis andq-axis and the torque generated in the motor 17, which are measured inadvance by experiment, etc. The torque calculator 204 calculates thetorque estimation value T_(est) as the estimation value of the torquegenerated in the motor 17 based on the dq-axis current detection value(i_(d), i_(q)) with reference to this table, and outputs the calculatedvalue to the subtractor 209.

The filter 203 is a low pass filter, which removes the high-frequencynoise of the input torque command value T* (noise cutting process) andoutputs the torque command value T* to the subtractor 209 as the torquereference value T_(ref).

The subtractor 209 calculates a deviation Terr between the torquereference value T_(ref) and the torque estimation value T_(est), andoutputs the deviation T_(err) to the PI compensator 205.

The PI compensator 205 is a calculator that executes the so-called PIcontrol. The PI compensator 205 calculates the voltage phase commandvalue α_(fb) (feedback voltage phase command value) using the followingEquation (12) to perform a feedback control based on the deviationT_(err) between the torque reference value T_(ref) and the torqueestimation value T_(est). The calculated voltage phase command valueα_(fb) is output to the adder 208.

$\begin{matrix}\left\lbrack {{Equation}12} \right\rbrack &  \\{\alpha_{fb} = {\frac{{K_{\alpha p}s} + K_{\alpha i}}{s}\left( {T_{ref} - T_{est}} \right)}} & (12)\end{matrix}$

However, the Kα_(p) in Equation (12) indicates a proportional gain, andthe Kα_(i) in Equation (12) indicates an integral gain.

The adder 208 outputs the value (voltage phase command value), which isobtained by adding the feedforward voltage phase command value α_(ff) tothe feedback voltage phase command value α_(fb), to the voltage phasecommand value limiter 206.

The voltage phase command value limiter 206 limits the output value ofthe adder 208 to a predetermined range from αmin to αmax, and outputsthe limited value as the voltage phase command value α* to the vectorconverter 207. The predetermined range here from αmin to αmax(hereinafter also referred to as “upper and lower limit values of α”)will be described with reference to FIG. 4.

FIG. 9 is a diagram showing an example of the relation between thevoltage phase and the torque of the motor 17. If the motor 17 which isthe target to be controlled exhibits, for example, the characteristicsshown in FIG. 9, the peak to peak of the curve in the figure, ±115°, isset to be the upper and lower limit values of a as the range in whichthe correlation between the voltage phase and the torque is maintained.

Further, the voltage phase command value limiter 206 sends a signal tothe PI compensator 205 notifying that the voltage phase command value α*is limited by the upper and lower limit values of α when a value outputfrom the adder 208 (voltage phase command value) is exceeding the upperor lower limit value of α (when the value is staying at the upper orlower limit value of α). The PI compensator 205 stops updating theintegral value for the so-called anti-windup when being notified by thesignal that the voltage phase command value α* is limited.

The vector converter 207 calculates the dq-axis voltage command value(v*_(d_v), v*_(q_v)) using the following Equation (13) by inputting thevoltage norm command value V*a output from the modulator 201 and thevoltage phase command value α* after the limit processing by the voltagephase command value limiter 206. The calculated dq-axis voltage commandvalue (v*_(d_v), v*_(q_v)) is output to the output switcher 5.

$\begin{matrix}\left\lbrack {{Equation}13} \right\rbrack &  \\\left\{ \begin{matrix}{v_{d\_ v}^{*} = {{- V_{a}^{*}}\sin\alpha^{*}}} \\{v_{q\_ v}^{*} = {V_{a}^{*}\cos\alpha^{*}}}\end{matrix} \right. & (13)\end{matrix}$

Next, the details of the output switcher 5 will be described withreference to FIG. 10.

<Output Switcher>

FIG. 10 is a diagram showing the details of the output switcher 5. Asshown in FIG. 10, the output switcher 5 switches between current vectorcontrol and voltage phase control according to the control mode signal.

When the control mode signal indicates current vector control, theoutput switcher 5 outputs the d-axis voltage command value v*_(d_i),which is output from the current vector control unit 1, as thev*_(d_iv), and outputs the q-axis voltage command value v*_(q_i) i asthe v*_(q_iv), respectively.

When the control mode signal indicates voltage vector control, theoutput switcher 5 outputs the d-axis voltage command value v*_(d_v),which is output from the voltage phase control unit 2, as the v*_(d_iv),and outputs the q-axis voltage command value v*_(q_v) as the v*_(q_iv).The dq-axis final voltage command value (v*_(d_iv), v*_(q_iv)) output bythe output switcher 5 is input to the voltage compensator 23.

Next, the details of the control switching determiner 6 will bedescribed with reference to FIG. 11 and FIG. 12.

<Control Switching Determiner>

FIG. 11 is a diagram showing the details of the control switchingdeterminer 6. The control switching determiner 6 includes a modulator601, filters 602, 603, 605, 606, 607, a voltage norm calculator 604, anda control mode determiner 608.

The modulator 601 calculates the voltage norm command value V*_(a) usingthe above Equation (11) based on the voltage detection value V_(dc) ofthe battery (Bat.) and the reference modulation factor M*, which is apre-stored value, in the same way as the modulator 201 described withreference to FIG. 8. The calculated voltage norm command value V*_(a) isinput to the control mode determiner 608. The voltage norm command valueV*_(a) is used in the control mode determiner 608 as an index of whetheror not the control mode can be switched to voltage phase control.

The filters 602 and 603 are low pass filters set to equivalentcharacteristics, and the d-axis final voltage command valuev*_(d_fin-flt) and q-axis final voltage command value v*_(q_fin_flt),which are obtained by applying the noise cutting process to the d-axisfinal voltage command value v*_(d_fin) and q-axis final voltage commandvalue v*_(q_fin) input respectively to the filters 602 and 603, areoutput to the voltage norm calculator 604.

The voltage norm calculator 604 calculates the averaged voltage normV*_(a_fin_fit) using the following Equation (14) based on the inputd-axis final voltage command value v*_(d_fin_flt) and q-axis finalvoltage command value v*_(q_fin_flt). The calculated averaged voltagenorm V*_(a_fin_flt) is input to the control mode determiner 608. Theaveraged voltage norm V*_(a_fin-flt) is used in the control modedeterminer 608 as an index of whether or not the control mode can beswitched to voltage phase control.

[Equation 14]

v* _(a_fin_flt)−√{square root over (v* _(d_fin_flt) ² +v* _(q_fin_flt)²)}  (14)

The filter 605 is a low pass filter, which obtains an averaged d-axiscurrent detection value id_flt by applying a noise cutting process tothe input d-axis current detection value i_(d), and outputs the averagedd-axis current detection value i_(d_flt) to the control mode determiner48. The averaged d-axis current detection value i_(d_flt) is used in thecontrol mode determiner 608 as an index of whether or not the controlmode can be switched to current vector control.

The filter 606 is a low pass filter having the same characteristics asthe filter 203 shown in FIG. 8, and the filter 606 applies the noisecutting process to the input d-axis current command value i*_(d) andoutputs the d-axis current reference value i*_(d_ref). The d-axiscurrent reference value i*_(d_ref) is output to the filter 607.

The filter 607 is a low pass filter having the same characteristics asthe filter 605. The filter 607 obtains the d-axis current thresholdvalue i*_(d_th) by applying a filtering process to the d-axis currentreference value i*_(d_ref) for the purpose of matching the delay withthe side of the d-axis current detection value i_(d_flt), and outputsthe d-axis current threshold value i*_(d_th) to the control modedeterminer 608. The d-axis current threshold value i*_(d_th) is used inthe control mode determiner 608 as an index of whether or not thecontrol mode can be switched to current vector control.

The control mode determiner 608 determines whether or not a currentvector control can be (needs to be) switched to voltage phase controland whether or not a voltage phase control can be (needs to be) switchedto current vector control. Specifically, it will be described withreference to FIG. 12.

FIG. 12 is a diagram showing a determination criterion of the controlswitching determiner 6 (control mode determiner 608). As shown in FIG.12, when current vector control is selected, the control mode determiner608 determines to switch from current vector control to voltage phasecontrol if it is detected that the averaged voltage norm V*_(a fin_flt)is equal to or greater than the voltage norm command value V*_(a).Further, when voltage phase control is selected, the control modedeterminer 608 determines to switch from voltage phase control tocurrent vector control if it is detected that the averaged d-axiscurrent detection value i_(d_flt) is equal to or greater than the d-axiscurrent threshold value i*_(d_th). The control mode determined in thisway is output to the output switcher 5 as a control mode signal.

Next, the details of the modulation switching determiner 7 will bedescribed with reference to FIG. 13, FIG. 14.

<Modulation Switching Determiner>

FIG. 13 is a diagram showing the details of the modulation switchingdeterminer 7. The modulation switching determiner 7 includes anasynchronous PWM transfer voltage norm calculator 701, a synchronous PWMtransfer voltage norm calculator 702, a final voltage norm calculator703, and a modulation mode determiner 704.

The asynchronous PWM transfer voltage norm calculator 701 calculates theasynchronous transfer voltage norm V_(a_async) using the voltagedetection value V_(dc) of the battery (Bat.) and the asynchronous PWMtransfer modulation factor M_(async) by the following Equation (15), andoutputs the asynchronous transfer voltage norm V_(a_async) to themodulation mode determiner 704.

$\begin{matrix}\left\lbrack {{Equation}15} \right\rbrack &  \\{V_{a\_{async}}^{2} = \left( {V_{dc} \times \frac{M_{async}}{\sqrt{2}}} \right)^{2}} & (15)\end{matrix}$

The synchronous PWM transfer voltage norm calculator 702 calculates thesynchronous transfer voltage norm V_(a_sync) using the voltage detectionvalue V_(dc) of the battery (Bat.) and the synchronous PWM transfermodulation factor M_(sync) by the following Equation (16), and outputsthe synchronous transfer voltage norm V_(a_sync) to the modulation modedeterminer 704.

$\begin{matrix}\left\lbrack {{Equation}16} \right\rbrack &  \\{V_{a\_{sync}}^{2} = \left( {V_{dc} \times \frac{M_{sync}}{\sqrt{2}}} \right)^{2}} & (16)\end{matrix}$

The final voltage norm calculator 703 calculates the final voltage normV*_(a_fin) using the d-axis final voltage command value v*_(d_fin) andq-axis final voltage command value v*_(q_fin) output from the vectorconverter 9 by the following Equation (17), and outputs the finalvoltage norm V*_(a_fin) to the modulation mode determiner 704.

[Equation 17]

v* _(a_fin) ² =v* _(d_fin) ² +v* _(q_fin) ²   (17)

FIG. 14 is a diagram showing a determination criterion of the modulationswitching determiner 7 (modulation mode determiner 704). The modulationmode determiner 704 compares the asynchronous transfer voltage normV_(a_async), synchronous transfer voltage norm V_(a_sync), and finalvoltage norm V*_(a_fin) to determine the modulation mode to be output.That is, when the V*_(a_fin) ² is equal to or greater than theV_(a_sync) ², the modulation mode determiner 704 switches the modulationmode from asynchronous PWM control to synchronous PWM control, and whenthe V*_(a_fin) ² becomes equal to or less than the V_(a_async) ², themodulation mode determiner 704 switches the modulation mode fromasynchronous PWM control to synchronous PWM control.

Next, the details of the asynchronous PWM control unit 11 will bedescribed with reference to FIG. 15.

<Asynchronous PWM Controller>

FIG. 15 is a diagram showing the details of the asynchronous PWM controlunit 11. The asynchronous PWM control unit 11 includes a voltageutilization factor improvement processor 1101, a U-phase comparisonvalue converter 1102, a V-phase comparison value converter 1103, aW-phase comparison value converter 1104, a U-phase comparator 1105, aV-phase comparator 1106, and a W-phase comparator 1107.

The voltage utilization factor improvement processor 1101 performs avoltage utilization improvement process using a known processing methodsuch as triple harmonic superimposition process to maximize the sinewave generation of phase-to-phase voltage with respect to the input3-phase voltage command values (v*_(u), v*_(v), v*_(w)), and calculatesthe 3-phase voltage command values (U-phase voltage command valuev*_(u′), V-phase voltage command value v*_(v′), W-phase voltage commandvalue v*_(v′)). The calculated 3-phase voltage command values (U-phasevoltage command value v*_(u′), V-phase voltage command value v*_(v′),W-phase voltage command value v*_(w′)) are output to the U-phasecomparison value converter 1102, V-phase comparison value converter1103, and W-phase comparison value converter 1104, respectively.

The U-phase comparison value converter 1102 calculates the U-phasecomparison value (duty ratio) th_(u) using the following Equation (18)based on the voltage detection value V_(dc) of the battery (Bat.) andthe U-phase voltage command value v*_(u′), and outputs the U-phasecomparison value (duty ratio) th_(u) to the U-phase comparator 1105.

$\begin{matrix}\left\lbrack {{Equation}18} \right\rbrack &  \\{{th}_{v} = {50 + {\frac{2v_{v}^{*\prime}}{V_{dc}} \times {100\lbrack\%\rbrack}}}} & (18)\end{matrix}$

The V-phase comparison value converter 1103 calculates the U-phasecomparison value (duty ratio) th_(v) using the following Equation (19)based on the voltage detection value V_(dc) of the battery (Bat.) andthe V-phase voltage command value v*_(v′), and outputs the U-phasecomparison value (duty ratio) th_(v) to the V-phase comparator 1106.

$\begin{matrix}\left\lbrack {{Equation}19} \right\rbrack &  \\{{th}_{v} = {50 + {\frac{2v_{v}^{*\prime}}{V_{dc}} \times {100\lbrack\%\rbrack}}}} & (19)\end{matrix}$

The W-phase comparison value converter 1104 calculates the U-phasecomparison value (duty ratio) th_(w) using the following Equation (20)based on the voltage detection value V_(dc) of the battery (Bat.) andthe W-phase voltage command value v*_(w′), and outputs the U-phasecomparison value (duty ratio) th_(w) to the W-phase comparator 1107.

$\begin{matrix}\left\lbrack {{Equation}20} \right\rbrack &  \\{{th}_{v} = {50 + {\frac{2v_{w}^{*\prime}}{V_{dc}} \times {100\lbrack\%\rbrack}}}} & (20)\end{matrix}$

In the comparison calculator (U-phase comparator 1105, V-phasecomparator 1106, W-phase comparator 1107) of each phase, high-voltageelement drive signals (D*_(uua), D*_(ula), D*_(vua), D*_(vla), D*_(wua),D*_(wla)) are generated as PWM pulses during asynchronous PWM controlbased on the compare match between the triangular carrier wave ofconstant frequency and the comparison value of each phase (U, V, W-phasecomparison values th_(u), th_(v), th_(w)), and output to the PWM outputswitcher 13. Further, the frequency of the triangular carrier wave inthis embodiment is set to, for example, 5 kHz.

Next, the synchronous PWM control unit 12 will be described withreference to FIG. 16.

<Synchronous PWM Control Unit>

The synchronous PWM control unit 12 includes a modulation factorconverter 1201, a threshold value table 1202, a U-phase comparator 1203,a V-phase comparator 1204, a W-phase comparator 1205, an adder 1206, andshifters 1207, 1208. In the synchronous PWM control unit 12 of thisembodiment, the synchronous PWM control of the so-called voltage phasereference method is executed, wherein the electrical angle θ of themotor 17 is used as the reference for the carrier signal to generate apulse based on the compare match between the carrier signal and thevoltage phase to be PWM-switched, which is set as the threshold value.

The synchronous PWM control unit 12 outputs the value obtained by addingthe final voltage phase α*_(fin) and the electrical angle θ (θ+α*_(fin))using the adder 1206 as the U-phase carrier signal (U-phase synchronousPWM carrier signal) to the U-phase comparator 1203 as well as shifters1207 and 1208.

The shifter 1207 calculates a signal whose voltage phase is shifted by−2/3π with respect to the output of the adder 1206 as a V-phase carriersignal (V-phase synchronous PWM carrier signal), and outputs it to theV-phase comparator 1204.

The shifter 1208 calculates a signal whose voltage phase is shifted by+2/3π with respect to the output of the adder 1206 as a W-phase carriersignal (W-phase synchronous PWM carrier signal), and outputs it to theW-phase comparator 1205.

The modulation factor converter 1201 calculates the modulation factorM_(fin) using the following Equation (21) based on the final voltagenorm v*_(a_fin) and the voltage detection value V_(dc) of the battery(Bat.), and outputs it to the threshold value table 1202.

$\begin{matrix}\left\lbrack {{Equation}21} \right\rbrack &  \\{M_{fin} = \frac{\sqrt{2} \cdot v_{a\_{fin}}^{*}}{V_{dc}}} & (21)\end{matrix}$

The threshold value table 1202 obtains the threshold values th₁-th_(x)corresponding to the modulation factor M_(fin) with reference to thepre-stored threshold value table based on the modulation factor M_(fin)and the required synchronization pulse number num. Here, x is set to thevalue obtained by multiplying the required synchronization pulse numbernum by 4 and then subtracting 2 therefrom (x=4×num−2).

Second Embodiment

FIG. 17 is a diagram showing a main configuration (torque command valueinput side) of an electric vehicle to which an electric motor controlapparatus of a second embodiment is applied. The main configuration ofthe second embodiment is common to that of the first embodiment, but thevoltage compensation value generator 21 includes a table which makes thevoltage phase compensation values (α_(async), α_(sync)) respectivelycorrespond to the torque estimation value T_(est) (see FIG. 8) generatedby the voltage phase control unit 2. Therefore, once the estimationvalue of the torque (torque estimation value T_(est)) output by themotor 17 is input, the voltage compensation value generator 21 generatesthe voltage phase compensation values (α_(async), α_(sync)) based on thetable and outputs the voltage phase compensation values (α_(async),α_(sync)) to the voltage compensation value vector converter 22.

Third Embodiment

FIG. 18 is a diagram showing a main configuration (torque command valueinput side) of an electric vehicle to which an electric motor controlapparatus of a third embodiment is applied. The main configuration ofthe third embodiment is common to that of the first embodiment, but thevoltage compensation value generator 21 includes a table which makes thevoltage phase compensation values (α_(async), α_(sync)) respectivelycorrespond to the d-axis current command value i*_(d) (or q-axis currentcommand value i*_(q)) output by the current command value generator 3.Therefore, once a command value for outputting a predetermined currentfrom the inverter 14 to the motor 17, that is, the d-axis currentcommand value i*_(d) (or q-axis current command value i*_(q)), is input,the voltage compensation value generator 21 generates the voltage phasecompensation values (α_(async), α_(sync)) based on the table and outputsthe voltage phase compensation values (α_(async), α_(sync)) to thevoltage compensation value vector converter 22.

Further, the voltage compensation value generator 21 includes a tablewhich makes the voltage phase compensation values (α_(async), α_(sync))respectively correspond to the non-interference voltage v*_(d_dcpl) (orv*_(q_dcpl)) output by the non-interference voltage generator 4.Therefore, once a command value for outputting a predetermined currentfrom the inverter 14 to the motor 17, that is, the non-interferencevoltage v*_(d_dcpl) (or v*_(q_dcpl)), is input, the voltage compensationvalue generator 21 generates the voltage phase compensation values(α_(async), α_(sync)) based on the table and outputs the voltage phasecompensation values (α_(async), α_(sync)) to the voltage compensationvalue vector converter 22.

Fourth Embodiment

FIG. 19 is a diagram showing a main configuration (torque command valueinput side) of an electric vehicle to which an electric motor controlapparatus of a fourth embodiment is applied. The main configuration ofthe fourth embodiment is common to that of the first embodiment, but thevoltage compensation value generator 21 includes a table which makes thevoltage phase compensation values (α_(async), α_(sync)) respectivelycorrespond to the d-axis current detection value i_(d) (or q-axiscurrent detection value i_(q)) output by the dq-axis converter 19.Therefore, once an estimation value of a current output from theinverter 14 to the motor 17, that is, the d-axis current detection valuei_(d) (or q-axis current detection value i_(q)), is input, the voltagecompensation value generator 21 generates the voltage phase compensationvalues (a_(async), a_(sync)) based on the table and outputs the voltagephase compensation values (α_(async), α_(sync)) to the voltagecompensation value vector converter 22.

Fifth Embodiment

FIG. 20 is a diagram showing a main configuration (torque command valueinput side) of an electric vehicle to which an electric motor controlapparatus of a fifth embodiment is applied. The main configuration ofthe fifth embodiment is common to that of the first embodiment, but thevoltage compensation value generator 21 includes a table which makes thevoltage phase compensation values (a_(async), a_(sync)) respectivelycorrespond to the modulation factor M_(fin) generated by the synchronousPWM control unit 12 (modulation factor converter 1201). Therefore, oncethe modulation factor Mfin is input, the voltage compensation valuegenerator 21 generates the voltage phase compensation values (α_(async),α_(sync)) based on the table and outputs the voltage phase compensationvalues (α_(async), α_(sync)) to the voltage compensation value vectorconverter 22.

Sixth Embodiment

FIG. 21 is a diagram showing a main configuration (torque command valueinput side) of an electric vehicle to which an electric motor controlapparatus of a sixth embodiment is applied. The main configuration ofthe sixth embodiment is common to that of the first embodiment, but thevoltage compensation value generator 21 includes a table which makes thevoltage phase compensation values (α_(async), α_(sync)) respectivelycorrespond to the synchronization pulse number num output by thesynchronization pulse number determining unit 10. Therefore, once thesynchronization pulse number num is input, the voltage compensationvalue generator 21 generates the voltage phase compensation values(α_(async), α_(sync)) based on the table and outputs the voltage phasecompensation values (α_(async), α_(sync)) to the voltage compensationvalue vector converter 22.

In the present invention, as state quantities that correlate with thecomponents in the rotating coordinate system of the voltage applied tothe motor 17, the torque command value T*, torque estimation valueT_(est), d-axis current command value i*_(d) (or q-axis current commandvalue i*_(q)), non-interference voltage v*_(d_dcpl) (or v*_(q_dcpl)),d-axis current detection value i_(d) (or q-axis current detection valuei_(q)), modulation factor M_(fin), and synchronization pulse number numcan be applied, and the carrier frequency can also be applied, asdescribed above.

When any of the torque command value T*, d-axis current command valuei*_(d) (or q-axis current command value i*_(q)), non-interferencevoltage v*_(d_dcpl) (or v*_(q_dcpl)), modulation factor M_(fin),synchronization pulse number num, and carrier frequency have beenapplied as state quantities, they become the state quantities thatcorrespond to the command values output by the controller. For example,if state quantities corresponding to detection values detected from themotor 17 are applied, a compensation value may be calculated using thestate (detection values) one sampling before the software update cycle,and may be deviated from the appropriate compensation value. Since thedetection values are generally fluctuating, an appropriate filtering isrequired, and when the torque or current is changing, the calculatedcompensation value may deviate from the appropriate compensation valuebecause of the delay due to the filtering processing. However, byapplying the state quantities corresponding to the command values outputby the controller, the state quantities do not depend on the output,etc. of the motor 17, and the appropriate compensation value can becalculated without a delay due to the software update cycle.

Further, when any of the torque estimation value Test and d-axis currentdetection value i_(d) (or q-axis current detection value i_(q)) areapplied as state quantities, they become the state quantities thatcorrespond to the detection values detected from the motor 17. Forexample, when the state quantities corresponding to the command valuesoutput by the controller are applied, because the command values differfrom the detection values in the transient state where the commandvalues change significantly, if the modulation mode is switched at thistiming, the calculated compensation value may deviate from theappropriate compensation value. However, by applying the statequantities corresponding to the detection values detected from the motor17, the appropriate compensation value can be calculated regardless ofthe presence or absence of a transient state.

While the embodiments of the present invention have been describedabove, the above-described embodiments only show part of applicationexamples of the present invention and are not intended to limit thetechnical scope of the present invention to the specific configurationsof the above-described embodiments.

1. An electric motor control apparatus that alternately switchesmodulation mode between an asynchronous PWM control, which controls anelectric motor by fixing a PWM frequency, and a synchronous PWM control,which controls the electric motor by making the PWM frequencyproportional to a drive frequency of the electric motor, wherein whenswitching the modulation mode, a compensation value is calculated basedon a state quantity, which correlates with a component in a rotatingcoordinate system of a voltage applied to the electric motor and isobtained immediately before switching, and the voltage immediately afterswitching is compensated for by the compensation value.
 2. The electricmotor control apparatus according to claim 1, wherein: the compensationvalue is a voltage phase component in the rotating coordinate system. 3.The electric motor control apparatus according to claim 1, wherein: thestate quantity is a command value for the electric motor to output apredetermined torque.
 4. The electric motor control apparatus accordingto claim 1, wherein: the state quantity is an estimation value of atorque output by the electric motor.
 5. The electric motor controlapparatus according to claim 1, wherein: the state quantity is a commandvalue for outputting a predetermined current to the electric motor. 6.The electric motor control apparatus according to claim 1, wherein: thestate quantity is a detection value of a current output to the electricmotor.
 7. An electric motor control method that alternately switchesmodulation mode between an asynchronous PWM control, which controls anelectric motor by fixing a PWM frequency, and a synchronous PWM control,which controls the electric motor by making the PWM frequencyproportional to a drive frequency of the electric motor, the electricmotor control method comprising: calculating a compensation value basedon a state quantity, which correlates with a component in a rotatingcoordinate system of a voltage applied to the electric motor and isobtained immediately before switching; and compensating for the voltageimmediately after switching by the compensation value when switching themodulation mode.